Normalisierung (Datenbank)

Normalisierung ist ein Entwurfsansatz für relationale Datenbanken mit dem Zweck, redundante Speicherung von Informationen und damit Inkonsistenz und Anomalien zu vermeiden. Die Methode strukturiert die Daten anhand einer Folge von Regeln – „Normalformen“ genannt – die aufeinander aufbauen und formale Anforderungen an das Schema bestimmen.

Die vorgenannten Regeln können bereits beim Entwurf beachtet werden (auch unterstützt z. B. durch Werkzeuge für die semantische Datenmodellierung). Zunächst nach Gutdünken entworfene Relationen können in einem nachfolgenden Schritt unter Beachtung der Normalformen jeweils in eine normalisierte Gestalt überführt werden; dafür gibt es Algorithmen (wie etwa den Synthesealgorithmus (3NF), den Zerlegungsalgorithmus (BCNF) usw.), welche automatisiert werden können. Hierbei werden die Relationen bei Bedarf anhand ihrer funktionalen Abhängigkeiten in einfachere zerlegt, bis keine weitere Zerlegung (ohne Verlust an Information) mehr möglich ist. Mit dem Satz von Delobel kann man für einen Zerlegungsschritt formal nachweisen bzw. prüfen, welche Zerlegung keine Datenverluste mit sich bringt.

Es gibt verschiedene Ausmaße, in denen ein Datenbankschema gegen Anomalien gefeit sein kann. In diesem Zusammenhang spricht man davon, dass „es in erster, zweiter, dritter usw. Normalform vorliege“.


© MMXXIII Rich X Search. We shall prevail. All rights reserved. Rich X Search